package org.springframework.security.config.annotation.authentication;

import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.config.annotation.SecurityBuilder;

/**
 * @author Dillon
 * @date 2024/7/6
 * @slogan 致敬大师 致敬未来的你
 * @desc 认证管理器实现类构建器接口
 */
public interface ProviderManagerBuilder<B extends ProviderManagerBuilder<B>> extends SecurityBuilder<AuthenticationManager> {

	/**
	 * 构建认证实现类 账号密码认证 jwt 认证等
	 *
	 * @param authenticationProvider 认证实现类
	 * @return 认证实现类构建器
	 */
	B authenticationProvider(AuthenticationProvider authenticationProvider);

}
